package com.fsl.springcloudstream.provider;

import com.fsl.springcloudstream.messaging.SinkClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.stereotype.Component;


/**
 * @author dell
 * 消息生产者，标准的Sink方式生成消息
 * 另外的方式，可以参考springboot-stream-kafka的项目
 */
@Component
public class StreamMessageProducer {

    /**
     * 这个与Source.class里面的信息重复，不能同时存在，否则启动报错
     * 因为内部加载了相同的MessageChannel
     */
    @Autowired
    private SinkClient sinkClient;

    /**
     * 发送消息
     * @param message
     */
    public void sendMessage(String message){
        sinkClient.output().send(MessageBuilder.withPayload(message).build());
    }



}
